package org.example;


import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

//自定义限流器处理注解 要标明限流器和降级回退方法的名字  还可以高级配置 关于限流器的配置 因为是一个方法一个限流器
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface UseRateLimiter {
    String name() default "";//限流器名称


    String fallbackMethod() default "";//降级回退方法名称

    int capacity() default 0;//桶的容量

    int rate() default 0;//每秒生成的令牌数 或是漏桶流速
}
